home *** CD-ROM | disk | FTP | other *** search
/ Softdisk Supreme / Softdisk Supreme.iso / pc / DSK Files / 0-49 / SD010b.dsk / NAME.CHANGER.bas < prev    next >
BASIC Source File  |  2003-06-12  |  4KB  |  84 lines

  1. 10  REM  ** NAME CHANGER **
  2. 15  POKE  -25250,105: POKE  -25249,213
  3. 16  ONERR  GOTO 1690
  4. 20  GOSUB 2000: REM  TITLE PAGES
  5. 30  HOME 
  6. 39  POKE  -16368,0
  7. 40  VTAB 11: HTAB 5: PRINT "INSERT DISKETTE TO BE RETITLED": HTAB 6: PRINT "AND PRESS ANY KEY TO START."
  8. 41 X =  PEEK( -16384): IF X < = 127  THEN  GOTO 41
  9. 42  POKE  -16368,0
  10. 210 IOB =  -18456
  11. 220  POKE 1001,76: POKE 1002,181: POKE 1003,183:RWTS = 995
  12. 230 VOL = IOB +3:TRK = IOB +4:SEC = IOB +5:LBUF = IOB +8:HBUF = IOB +9:CMD = IOB +12:STS = IOB +13
  13. 240  POKE VOL,0
  14. 250  POKE TRK,2
  15. 260  POKE SEC,2
  16. 270  POKE LBUF,187
  17. 280  POKE HBUF,179
  18. 290  POKE CMD,1: REM  * READ *
  19. 300  POKE STS,0
  20. 350  CALL RWTS
  21. 360  POKE TRK,1
  22. 365  POKE SEC,12
  23. 370  POKE HBUF,180
  24. 380  CALL RWTS
  25. 390  HOME 
  26. 394 DOS =  PEEK(46201)
  27. 395  IF (DOS < >3)  AND (DOS < >4)  THEN  PRINT : PRINT "   I CANNOT WORK WITH THIS DISKETTE.       IT IS NOT DOS 3.3.": GOTO 1700
  28. 400  FOR X = 46197 TO 46186  STEP  -1
  29. 410  POKE 1212 +NU, PEEK(X)
  30. 420 NU = NU +1
  31. 430  NEXT 
  32. 510  PRINT : HTAB 8: PRINT "CATALOG HEADING CHANGER"
  33. 520  PRINT : PRINT " 12 CHARACTERS MAXIMUM": PRINT " <RETURN> TO MAINTAIN OLD HEADING"
  34. 530  FOR J = 1 TO 40: PRINT "*";: NEXT 
  35. 550  VTAB 10: HTAB 3: PRINT "CURRENT HEADING : ";
  36. 555  IF  PEEK(46459) = 32  THEN  HTAB 33: PRINT  PEEK(46204)
  37. 560  VTAB 12: CALL  -868: HTAB 7: PRINT "NEW HEADING : ------------"
  38. 570  VTAB 12: HTAB 21: INPUT "";HD$
  39. 575  IF HD$ = ""  THEN  GOTO 1690
  40. 580 LH =  LEN(HD$)
  41. 590  IF LH <12  THEN  FOR X = 1 TO 12 -LH:HD$ = HD$ +" ": NEXT 
  42. 600  IF LH >12  THEN  VTAB 14: PRINT  CHR$(7);"HEADING CANNOT EXCEED 12 CHARACTERS.": GOTO 560
  43. 610  FOR J = 1 TO 12
  44. 620  POKE 46186 +12 -J, ASC( MID$ (HD$,J,1)) +128
  45. 630  NEXT J
  46. 640  VTAB 14: CALL  -868: PRINT "INVERSE HEADING? (Y/N) : ";: GOSUB 2200
  47. 645  IF A$ = "N"  THEN  GOTO 700
  48. 650  FOR J = 1 TO 12
  49. 654  IF  MID$ (HD$,J,1) =  CHR$(32)  THEN  POKE 46186 +12 -J,160: GOTO 670
  50. 655  IF  ASC( MID$ (HD$,J,1)) >63  THEN  POKE 46186 +12 -J, ASC( MID$ (HD$,J,1)) -64: GOTO 670
  51. 660  POKE 46186 +12 -J, ASC( MID$ (HD$,J,1))
  52. 670  NEXT J
  53. 700  VTAB 16: CALL  -868: PRINT "DISPLAY THE VOLUME NUMBER? (Y/N) : ";: GOSUB 2200
  54. 710  IF A$ = "Y"  THEN  POKE 46459,32: POKE 46460,66: POKE 46461,174
  55. 720  IF A$ = "N"  THEN  POKE 46459,234: POKE 46460,234: POKE 46461,234
  56. 1500  REM  * WRITE *
  57. 1510  POKE CMD,2
  58. 1520  CALL RWTS
  59. 1550  POKE TRK,2
  60. 1560  POKE SEC,2
  61. 1570  POKE HBUF,179
  62. 1580  CALL RWTS
  63. 1690  HOME 
  64. 1700  VTAB 12: HTAB 4: PRINT "RENAME ANOTHER DISKETTE? (Y/N) : ";: GOSUB 2200
  65. 1710  IF A$ = "Y"  THEN  CLEAR : GOTO 30
  66. 1750  VTAB 20: PRINT "NOW BOOTING YOUR DISKETTE...   BYE"
  67. 1760  PRINT  CHR$(4);"PR#6"
  68. 1800  END 
  69. 2000  TEXT : HOME : SPEED= 255
  70. 2010  VTAB 8: HTAB 7: PRINT "DISKETTE HEADING CHANGER": VTAB 11: HTAB 19: PRINT "BY": VTAB 13: HTAB 14: PRINT "JOHN CHIANG"
  71. 2015  FOR I = 1 TO 2000
  72. 2020  NEXT 
  73. 2030  HOME 
  74. 2040  PRINT "   THIS PROGRAM WILL ALLOW YOU TO GIVE  A NAME TO EACH OF YOUR DOS DISKETTES.   YOU CAN NOW CHANGE THE NORMAL CATALOG   HEADING OF 'DISK VOLUME 254' TO ANY     TITLE YOU WISH."
  75. 2050  PRINT : PRINT : HTAB 14: PRINT "** NOTES **"
  76. 2060  PRINT : PRINT "1. THIS PROGRAM ONLY WORKS WITH DOS 3.3 DISKETTES."
  77. 2070  PRINT : PRINT "2. YOU MUST REBOOT YOUR DISKETTE AFTER  RUNNING THIS PROGRAM IN ORDER TO SEE    THE RETITLED HEADING.
  78. 2080  PRINT : PRINT "3. IF THE DOS ON YOUR DISKETTE SHOULD   BECOME DAMAGED, YOU CAN RESTORE IF BY   BRUNNING THE 'MASTER CREATE' PROGRAM    ON YOUR SYSTEM MASTER DISK."
  79. 2090  PRINT : PRINT : INPUT "   HIT <RETURN> TO BEGIN... ";Z$
  80. 2100  RETURN 
  81. 2200  GET A$: IF A$ < >"Y"  AND A$ < >"N"  THEN  PRINT  CHR$(7);: GOTO 2200
  82. 2210  IF A$ = "Y"  THEN  PRINT "YES"
  83. 2220  IF A$ = "N"  THEN  PRINT "NO"
  84. 2250  RETURN